#pragma once

class UIElement
{
public:
	UIElement() { m_noHit = false; m_visible = true; m_enabled = true; m_isDialog = false; }
	virtual void Draw() = 0;
	bool m_visible;
	bool m_noHit;
	bool m_enabled;
	Vertex2F m_position;
	Vertex2F m_size;
	ui32 m_state;
	bool m_isDialog;
	virtual void OnMouseClick() { };
	virtual void OnMouseMove(ui32 x, ui32 y, bool leftDown, bool rightDown) { }
	virtual void MouseActivity(bool left, Vertex2F pos, bool up) { }
	virtual bool DialogMouseActivity(bool left, Vertex2F pos, bool up) { return false; }
};